;animtools settings file
;
persistonresetforinitfolder=1				;1=active, allows the mod to continue functioning after resetting. useful when placing mod in $init folder.
enableinloaderediting=0						;1=active, allows in-loader position editing by enabling the editmode keys and disabling the sdt keys; adds 'keys' button to the modpage that may be clicked to swap to editmode controls; do note that you will see a significant decrease in fps
startuppositionenabled=0					;1=active, animtools will load a startup position on startup
startupposition=defaults/ATV_defaultsdt
defaultoralposition=defaults/ATV_defaultsdt
defaultfacefuckposition=defaults/ATV_facefuck
makebuttonsforpositions=1					;1=active, animtools will add a page for positions on the mod page. they are added on the page in order of the customloadkey number
enablecharvoicesaving=1						;1=active, animtools will add her voice settings in character code saving. can be toggled with button on modding menu
enablesexexpsaving=1						;1=active, enables sexual experience (or body resistance preset) to be saved with charcode. can be toggled with button on modding menu
enablecharpositionsaving=0					;1=active, enables char position saving upon loading, animtools will add the current position in character code saving. can be toggled with button on modding menu
;
; ***** feature settings *****
hookanimationtoggle=1						;1=active, replaces the vanilla animation toggling with calls to animtools positions "ATV_defaultsdt" and "ATV_facefuck"
dialogactionsenabled=1						;1=active, enables loading positions through dialog actions by using '[ANIMTOOLS_positionfilename]'
disablesweatonchange=1						;1=active, usually fixes bug where teleported sweat breaks sdt
allowcamerazoomchanges=1					;enables zoom position changing
allowcameraxychanges=1						;enabes position of camera changing
allowcamerarotationchanges=1				;enables camera rotation changes
allowpenissizechanging=1					;enables position files to change the penis size if it is too big upon loading
allowvigourchanges=1						;enables positions to increase the vigour on body contact resistance
reloadcurrentpositionafterstyle=1			;1=active, reloads the current animtool position when switching back to 'default' style from 'facefuck' style in sdt
resetarmsonpositionreset=0					;1=active, resets the arms to 'behind back' on a position reset
reloadarmsaftercharcode=1					;1=active, reloads arm position settings after charcode load, often charcodes have her arm postion that changes it
alwaysresetmissingsettings=0				;1=active, will reset missing settings even if settings files have _partial tag
pullbackonpositionchange=1					;1=active, resets animation to starting position if position changed
pullbackonpenischange=0						;1=active, resets animation to starting position if penis size changed (when body contact)
pullbackonzoomchange=0						;1=active, resets animation to starting position if zoom change changed (when body contact)
allowoldzoompoint=0							;1=active, allow positions before V11 to use the old zoom point algorithm, (new one is totally better)
useshade=0									;1=active, will use a dark fade between changing positions
disableshadeonpartial=1						;1=active, the dark fade will not be used when loading partial files
shadertimelength=18							;1+, the time (in frames) used to perform the shading between positions
enableshadyDAinjection=1					;1=active, allows animtools to inject dialog into sdt to use DialogActions features
hairgravityapplyoffset=1					;1=active, hair strands that have a gravity offset will maintain that offset with scene rotation
maxhairrangetochange=25						;0 to  360 degrees, animtools will ignore changing gravity for hair strands whose gravity direction are above this
minhairrangetochange=-25					;0 to -360 degrees, animtools will ignore changing gravity for hair strands whose gravity direction are below this
disableteethclenching=0						;1=active, prevents her from clenching teeth. forgot why i added this originally. maybe something about penisout behind stuff
enablelegmountbodyscaling=1					;1=active, postions made in v28 and later will have her body scale saved for reference and animtools will attempt to shift her knee mouting point when you use a different bodysize
legmountscalefactor=80						;0.0+, multiplication factor of how far per percent off from authors savedbodyscale moves her knee mouting point, purely a trial and error value came up with testing various positions. default is 80
usefallbacklegmountbodyscaling=0			;1=active, if leg mount scaling enabled, and a position is loaded made before v28, animtools will assume the position was created with the setting of fallbacklegmountbodyscaling
fallbacklegmountbodyscaling=0.4				;0.1-1.0, the fallback value assumed when using fallback leg mounting. her default size is 0.4
usebackwardscompatarms=1					;1=enabled, will use old arm position logic for older positions
assumepartialsareofequalversion=1			;1=enabled, if a partial position is loaded, assumes it is of the same version of previous position loaded (unless always reset position is enabled, then it uses latest version) 
usemovementvigourforvigorousbodyexited=1	;1=enabled, for vigourous body and vigorous body exit dialog lines, specifically triggered after a lot of movement caused vigour (no resistive vigour used). 
disablevanillavigourdialogwhenbodycontact=2	;1=enabled, 2=auto, prevents the 'vigorous' vanilla dialog lines from building so specific animtools vigour states can be played more. disable this for previous behavior and to work with dialogs written that used both 'vigorous' lines with body positions. enable if instead going to be using animtools lines (though i would suggest auto instead). auto determined by if there are 'bodycontactmovementvigour' lines in your dialog
nopullbackforherstationarypositions=1		;1=enabled, disables her ability to pull off the penis when using a position where her arms are not on him, and she moves less than nopullbackdistrequirement
nopullbackdistrequirement=225				;0+, distance required to enable no pullback feature.

; **** body contact entry/exit sound settings ****
disablebodycontactsounds=0					;1=active, will disable body contact sound (entering and leaving) even if position has it on. will not disable hilt sounds if animtools has that setting enabled
bodycontactentrysoundtype=4					;0 == disabled, 1 == down throat sound, 2 == lip touch sound, 3 == lick sound, 4 == speed based
bodycontactexitsoundtype=4					;0 == disabled, 1 == down throat sound, 2 == lip touch sound, 3 == lick sound, 4 == speed based
bodycontactentryexitspeeddiff=0.055			;0.0+, difference in speed used to determine speed based body contact entry and exit sounds. good values range from 0.03 having a small gap where lick and touch might not trigger by throat up and down triggering to easily, and 0.07 where you have to really thrust fast to get the up and down throat sounds to trigger



; **** body contact hilt sound settings ****
bodycontacthiltsounds=1							;1=active, will play a sound when hilted in body contact, if the position allows bodycontact sounds

bodycontacthiltgrabsound=1						;1=active, will play this sound for body contact hilt
grabsoundbodycontacthiltspeedtarget=0.7			;0.0+, speed difference required to play sound for body contact hilt. 0.3 is very little difference, 0.8 is a lot. 
grabsoundbodycontacthiltspeedtargetcap=2		;0.0+, body contact hilt will not play the sound if the speed difference is above this

bodycontacthiltlicksound=1						;1=active, will play this sound for body contact hilt
licksoundbodycontacthiltspeedtarget=0.2			;0.0+, speed difference required to play sound for body contact hilt. 0.3 is very little difference, 0.8 is a lot.
licksoundbodycontacthiltspeedtargetcap=0.5		;0.0+, body contact hilt will not play the sound if the speed difference is above this

bodycontacthiltsplatsound=0						;1=active, will play this sound for body contact hilt
splatsoundbodycontacthiltspeedtarget=0.8		;0.0+, speed difference required to play sound for body contact hilt. 0.3 is very little difference, 0.8 is a lot.
splatsoundbodycontacthiltspeedtargetcap=2		;0.0+, body contact hilt will not play the sound if the speed difference is above this

bodycontacthilttouchsound=1						;1=active, will play this sound for body contact hilt
touchsoundbodycontacthiltspeedtarget=0.5		;0.0+, speed difference required to play sound for body contact hilt. 0.3 is very little difference, 0.8 is a lot.
touchsoundbodycontacthiltspeedtargetcap=0.7		;0.0+, body contact hilt will not play the sound if the speed difference is above this









; ***** dialog line settings *****     		;priority: higher == will trigger first     life: higher == able to wait longer to trigger
bodycontactspaceheldpushpriority=1					;normal priorities are 0-2, 0 being general lines , and 2 being cum lines
bodycontactspaceheldpushlife=120					;life are usually 560 for something that can be commentted on after a long time like cum_on_face, to short like 400 (i think that is way too much) for 'in-the-moment' lines such as drool or first_dt
bodycontactspaceheldpushdelaybuild=500				;0+, after this line is played this amount of delay is applied before it can be considered to play again

bodycontactspaceheldpushinhiltpriority=1			
bodycontactspaceheldpushinhiltlife=120				
bodycontactspaceheldpushinhiltdelaybuild=500		;0+, after this line is played this amount of delay is applied before it can be considered to play again

cuminherpriority=2									;dialogs chosen to play first are by higher priority, and highest current life
cuminherlife=320									;life is reduced by 120 if a different line is played, and by 1 each frame. so at ~25 fps, assume 25 life == second

bodycontacthiltpriority=2
bodycontacthiltlife=320
bodycontacthiltdelaybuild=500						;0+, after this line is played this amount of delay is applied before it can be considered to play again

bodyenteredpriority=0
bodyenteredlife=80
bodyentereddelaybuild=1000							;0+, after this line is played this amount of delay is applied before it can be considered to play again

bodyexitedpriority=0
bodyexitedlife=80
bodyexiteddelaybuild=1000							;0+, after this line is played this amount of delay is applied before it can be considered to play again

inbodypriority=0
inbodylife=40
inbodydelaybuild=1000								;0+, after this line is played this amount of delay is applied before it can be considered to play again
inbodytimerequirement=50							;0+, number of frames while in her body before inbody will attempt to trigger

bodycontactloosepriority=1
bodycontactlooselife=170
bodycontactloosedelaybuild=800						;0+, after this line is played this amount of delay is applied before it can be considered to play again

vigorousbodyexitedpriority=1
vigorousbodyexitedlife=130
vigorousbodyexiteddelaybuild=300					;0+, after this line is played this amount of delay is applied before it can be considered to play again

vigorousbodyexitedrelaxpriority=1
vigorousbodyexitedrelaxlife=160
vigorousbodyexitedrelaxdelaybuild=300				;0+, after this line is played this amount of delay is applied before it can be considered to play again
vigorousbodyexitedrelaxtimerequirement=90

bodycontactresistivepriority=1
bodycontactresistivelife=100
bodycontactresistivedelaybuild=200					;0+, after this line is played this amount of delay is applied before it can be considered to play again
bodycontactresistivethreshhold=1.3			;1.0+, ratio of in resistance area, use ~1.1 to cause it to trigger more, ~1.5 to trigger less

bodycontactmovementvigourpriority=1
bodycontactmovementvigourlife=120
bodycontactmovementvigourdelaybuild=200			;0+, after this line is played this amount of delay is applied before it can be considered to play again


; ***** auto close mouth settings (version 6 and higher) *****
autoclosemouth_closefororal=0			;1=enabled, tells autoclosemouth mod to turn on for oral positions
autoclosemouth_closefortit=0			;1=enabled, tells autoclosemouth mod to turn on for tit positions
autoclosemouth_closeforvaginal=0		;1=enabled, tells autoclosemouth mod to turn on for vaginal positions
autoclosemouth_closeforanal=0			;1=enabled, tells autoclosemouth mod to turn on for anal positions
autoclosemouth_closeforother=0			;1=enabled, tells autoclosemouth mod to turn on for other positions
;
autoclosemouth_openfororal=0			;1=enabled, tells autoclosemouth mod to turn off for oral positions
autoclosemouth_openfortit=0				;1=enabled, tells autoclosemouth mod to turn off for tit positions
autoclosemouth_openforvaginal=0			;1=enabled, tells autoclosemouth mod to turn off for vaginal positions
autoclosemouth_openforanal=0			;1=enabled, tells autoclosemouth mod to turn off for anal positions
autoclosemouth_openforother=0			;1=enabled, tells autoclosemouth mod to turn off for other positions
;
;
; ***** hunnie pop sound settings *****
disablehunniepopsounds=1				;1=hunniepop char voice sounds disabled by default. can reenable by clicking the button next to the voice selection on the scene menu
currentvoicechar=0						;0=no voice, 1=aiko, 2=audrey, 3=beli, 4=kyanna, 5=kyu, 6=lola, 7=tiffany
;
playhardvigourrequired=90				;0-100, percent of her vigour required to play the hard sound
playhardvigourrequiredhigh=110			;0-100, highest value will allow to trigger at
playhardvigourchangerequired=0.5		;0-100, change of vigour over previous frames required to play hard sound
playhardvigourchangerequiredhigh=999	;0-100, highest value will allow to trigger at
playhardspeedrequired=0					;0.0-1, her speed required to trigger hard sound, 0.1 is a medium speed
playhardspeedrequiredhigh=99			;0.0-1, highest value will allow to trigger at
playhardposrequired=0					;0.0-1.2, position of her (or him if he is moving) required to play hard sound, 0 usually being farthest away, 1.2 being hilted
playhardposrequiredhigh=1.5				;0.0-1.2, highest value will allow to trigger at
;
playmediumvigourrequired=40				;0-100, percent of her vigour required to play the medium sound
playmediumvigourrequiredhigh=110		;0-100, highest value will allow to trigger at
playmediumvigourchangerequired=4		;0-100, change of vigour over previous frames required to play medium sound
playmediumvigourchangerequiredhigh=999	;0-100, highest value will allow to trigger at
playmediumspeedrequired=0				;0.0-1, her speed required to trigger medium sound, 0.1 is a medium speed
playmediumspeedrequiredhigh=99			;0.0-1, highest value will allow to trigger at
playmediumposrequired=0					;0.0-1.2, position of her (or him if he is moving) required to play medium sound, 0 usually being farthest away, 1.2 being hilted
playmediumposrequiredhigh=1.5			;0.0-1.2, highest value will allow to trigger at
;
playsoftvigourrequired=10				;0-100, percent of her vigour required to play the soft sound
playsoftvigourrequiredhigh=110			;0-100, highest value will allow to trigger at
playsoftvigourchangerequired=5			;0-100, change of vigour over previous frames required to play soft sound
playsoftvigourchangerequiredhigh=999	;0-100, highest value will allow to trigger at
playsoftspeedrequired=0.02				;0.0-1, her speed required to trigger soft sound, 0.1 is a medium speed
playsoftspeedrequiredhigh=99			;0.0-1, highest value will allow to trigger at
playsoftposrequired=0					;0.0-1.2, position of her (or him if he is moving) required to play soft sound, 0 usually being farthest away, 1.2 being hilted
playsoftposrequiredhigh=1.5				;0.0-1.2, highest value will allow to trigger at
;
soundlevellow=0.4					;0.0-1, volume level considered low level. 0 being none, 1 being full volume
soundlevelmedium=0.55				;0.0-1, volume level considered medium level. 0 being none, 1 being full volume
soundlevelhigh=0.7					;0.0-1, volume level considered high level. 0 being none, 1 being full volume
soundlevelmediumvigourchange=10		;0.0-100, change of vigour over previous frames required to play sound at medium level
soundlevelhighvigourchange=20		;0.0-100, change of vigour over previous frames required to play sound at high level
;
masterrepeatdelay=35					;0+, delay in frames before another voice sound will be played
masterrepeatdelayrandom=10				;0+, max amount of random delay in frames that can be added to masterrepeatdelay
softrepeatdelay=75						;0+, delay in frames before another soft sound can be played
mediumrepeatdelay=55					;0+, delay in frames before another medium sound can be played
hardrepeatdelay=35						;0+, delay in frames before another hard sound can be played
;
;
;
; ***** key mapping settings *****
randomizekeybindorder=0						;1=enabled, customloadkey positions bound to the same key for cycling are randomized. otherwise bound by customloadkey numeric order. 
setreloadpositionkey=112					;reloads the animtools position, default is f1
setloadfunctiontokey=113					;the button to press to load position files. change to negative number to prevent key mapping. default value should be the key 'f2'
randomposkey=122							;button to choose random position that are marked on the random list, assign to 0 to ignore, f11 by default
openmenukey=27								;the button that will open the in game menu when the editmode keys are active, 0 == ignored. default is 'esc'
spaceholdkey=32								;the button to trigger 'spacehold' feature for non-oral positions to force through resistancem default is space
setpositionpagekey=115						;pressing this button will cyclye between custom load key pages, default if f4
;
;
;f3 default sdt positions
customloadkey100=114,defaults/ATV_defaultsdt		;adds a quickload key to load a position from the 'Settings' folder
customloadkey101=114,defaults/ATV_facefuck			;format for entries are: customloadkey[integer number 0 to 65000]=[button to register],[name of position file],[which position page to add to (0, 1, 2, ect...). if not defined assumes page 0],[0==optional, prevents modpage button creation]
;
;f4 by default is the cycle position page key, see setpositionpagekey
;
;
;f5 oral
customloadkey700=116,Oral/facefuckalt2,0
customloadkey701=116,Oral/BedBJ,0
customloadkey702=116,Oral/ATV_laydownarmsback,0
customloadkey703=116,Oral/ATV_laydownarmsprops,0
customloadkey704=116,Oral/ATV_bothhandsonhim_slut_randomdude123,0
customloadkey705=116,Oral/ATV_headangledpenisangledclose,0
customloadkey706=116,Oral/ATV_all_fours_onewithshadows_edit,0
customloadkey707=116,Oral/ATV_thrustdown,0
customloadkey708=116,Oral/ATV_breastsholdthrust_prop,0
customloadkey709=116,Oral/ATV_himsitinghandjob_randomdude123,0
customloadkey710=116,Oral/LayOnBellyGrabAnkles,0
customloadkey749=116,Oral/HimD/ATV_backkneespushback_prop,1
customloadkey750=116,Oral/HimD/ATV_backkneespushback2_prop,1
customloadkey751=116,Oral/HimD/ATV_backkneesstraighton_props,1
customloadkey752=116,Oral/HimD/ATV_KorraSlave_prop,1
customloadkey753=116,Oral/HimD/ATV_KorraSlave3,1
customloadkey754=116,Oral/HimD/korraslave_alt,1
customloadkey755=116,Oral/HimD/ATV_tiedup_prop,1
customloadkey756=116,Oral/HimD/ATV_tiedup2_prop,1
customloadkey757=116,Oral/HimD/facefuckdom,1
customloadkey758=116,Oral/HimD/facefuckdomangle,1
customloadkey759=116,Oral/HimD/facefuckwithpole,1
customloadkey760=116,Oral/HimD/ATV_laydownarmsdown_propped,1
customloadkey761=116,Oral/HimD/ATV_laydownarmsdown_props,1
customloadkey762=116,Oral/HimD/ATV_legup,1
customloadkey763=116,Oral/HimD/Head_on_Pole_Wither2,1
customloadkey764=116,Oral/HimD/Pole_Suspension_Wither2,1
customloadkey765=116,Oral/HimD/Pole_Suspension_Wither_downthrust,1
customloadkey766=116,Oral/HimD/Tied_to_Wall_Wither2,1
customloadkey767=116,Oral/HimD/headpole_high,1
customloadkey768=116,Oral/HimD/headpole_high2,1
customloadkey769=116,Oral/HimD/headpole_low,1
customloadkey780=116,Oral/HerD/BedBJ_nohold,2
customloadkey781=116,Oral/HerD/BedHJ,2
customloadkey782=116,Oral/HerD/BedHJ2,2
;
;
;f6 titfuck
customloadkey800=117,Titfuck/ATV_titfuck,0
customloadkey801=117,Titfuck/ATV_titfuck_jetstorm,0
;
;
;f7 vaginal
customloadkey600=118,Vaginal/ATV_doggy_hard_vag,0
customloadkey601=118,Vaginal/ATV_doggy_vag_angled,0
customloadkey610=118,Vaginal/ATV_doggy6chair_vag,0
customloadkey620=118,Vaginal/ATV_lying_down_bed,0
customloadkey621=118,Vaginal/ATV_Missionary_V2_Medium_QuiteQuaint,0
customloadkey622=118,Vaginal/ATV_ReverseCowgirl6,0
customloadkey640=118,Vaginal/HimD/ATV_TiedVag1armbackprop,1
customloadkey641=118,Vaginal/HimD/ATV_TiedVag2armforwardprop,1
customloadkey650=118,Vaginal/HerD/ATV_AltCowgirl,2
customloadkey652=118,Vaginal/HerD/ATV_ReverseCowgirl_her_move_only,2
;
;
;f8 anal
customloadkey500=119,Anal/anal_bed_holding_propped,0
customloadkey501=119,Anal/anal_bed_holding_propped2,0
customloadkey502=119,Anal/anal_bed_holding_propped3,0
customloadkey510=119,Anal/ATV_doggy_bed_steady,0
customloadkey511=119,Anal/ATV_doggy_downtiltdown,0	
customloadkey512=119,Anal/ATV_doggy_downtiltup2,0
customloadkey513=119,Anal/ATV_AnalMediumBody_randomdude123_prop,0
customloadkey514=119,Anal/ATV_doggy_hard,0
customloadkey515=119,Anal/ATV_DoggyDown3_Hansel,0
customloadkey520=119,Anal/ATV_doggy_crouching_chair2,0
customloadkey521=119,Anal/ATV_doggy_crouching_chair3_high,0
customloadkey522=119,Anal/ATV_doggy6chair_anal,0
customloadkey523=119,Anal/ATV_offthewall_randomdude123,0
customloadkey524=119,Anal/ATV_himonkneeanal_randomdude123,0
customloadkey525=119,Anal/ATV_doggy_crouching_ottoman,0
customloadkey530=119,Anal/ATV_doggy_crouching_stair,0
customloadkey563=119,Anal/HimD/anal_bed_holding_propped4,1
customloadkey564=119,Anal/HimD/anal_otto_holding_propped,1
customloadkey565=119,Anal/HimD/anal_otto_holding_propped_low,1
customloadkey580=119,Anal/HimD/ATV_TiedAnal1armbackprop,1
customloadkey581=119,Anal/HimD/ATV_TiedAnal2armforwardprop,1	
;
;
;f9 other
customloadkey900=120,Other/Futa_anal
customloadkey10=-1,ATV_AnalSmallBody_randomdude123
customloadkey11=-1,ATV_backkneespushback
customloadkey12=-1,ATV_breastsholdthrust
customloadkey13=-1,ATV_hidehim_partial
customloadkey14=-1,ATV_showhim_partial
customloadkey17=-1,Microphonetable
customloadkey18=-1,Blojob_Ground
customloadkey19=-1,36_blowjob_cupping
customloadkey20=-1,ATV2_titfuck_jetstorm
customloadkey21=-1,POS_Dmnt_S
customloadkey22=-1,POS_Frce_S
customloadkey23=-1,POS-Dual-S
customloadkey24=-1,LaydownV2
customloadkey25=-1,Animtools_downthrusting2
customloadkey26=-1,trap auto
customloadkey27=-1,Facefuck2
customloadkey28=-1,Oral/ChairFacefuckA
customloadkey30=-1,Oral/ChairFacefuckB
customloadkey29=-1,Oral/Yoga
customloadkey31=-1,Oral/ATV_all_fours_onewithshadows
customloadkey32=-1,chair_facefuck
;
;
; ***** positions registered to be on the random list *****        ;additional entries can be added by following the pattern here, just make sure to use a number that has not been used. positions with spaces in their name won't work
;format goes randomregister1=[position name]
;randomregister1=ATV_all_fours_onewithshadows		;example entry, commented out
;